1. Technical Field
This application generally relates to data storage, and more particularly to techniques used for data storage configuration.
2. Description of Related Art
Configuring data storage resources adequately for electronic mail and other messaging systems is challenging, both from an application performance standpoint and a storage space allocation standpoint.
For example, messaging systems typically allocate message mailboxes of fixed size to the subscribers of the messaging service. So if a subscriber rapidly receives a large number of messages or does not regularly retrieve received messages, there is a good chance that the capacity of the subscriber's mailbox will be exceeded and the mailbox will overflow. This results in loss of messages or inability of message senders to leave further messages for the subscriber. Yet other subscribers may no longer be using their mailboxes, or use only a small portion of their mailboxes' capacities, resulting in a waste of storage space.
Many voice and/or multimedia messaging systems have warning announcements which are provided to subscribers to advise them of the fill level of their mailboxes. While this is a worthwhile feature, it does not specifically help with the problem of mailbox overflow conditions. It can be frustrating to a caller to be informed that the party they are trying to reach has a full mailbox. The result can be loss of business, loss of necessary information, and/or loss of productivity. Two other related problems, from the system administrator's point of view, are the allocation of storage space to mailboxes which are seldom or never fully utilized, and the persistence of logins and their associated mailboxes that are still in place for subscribers who have changed messaging systems or ceased to be subscribers. This last problem is especially of concern in very large systems and/or those designed for public service-provider use.
Some systems provide audits that the system administrator may use manually to provide a means for sizing mailboxes and for expiring logins. But this does not provide the prompt response to changing conditions that is desirable.
Messaging systems typically rely on computer systems that may include different resources used by one or more host processors. Resources and host processors in a computer system may be interconnected by one or more communication connections. These resources may include, for example, data storage devices such as those included in the data storage systems manufactured by EMC Corporation. These data storage systems may be coupled to one or more servers or host processors and provide storage services to each host processor. Multiple data storage systems from one or more different vendors may be connected and may provide common data storage for one or more host processors in a computer system.
A host processor may perform a variety of data processing tasks and operations using the data storage system. For example, a host processor may perform basic system I/O operations in connection with data requests, such as data read and write operations.
Host processor systems may store and retrieve data using a storage device containing a plurality of host interface units, disk drives, and disk interface units. The host systems access the storage device through a plurality of channels provided therewith. Host systems provide data and access control information through the channels to the storage device and the storage device provides data to the host systems also through the channels. The host systems do not address the disk drives of the storage device directly, but rather, access what appears to the host systems as a plurality of logical disk units. The logical disk units may or may not correspond to the actual disk drives. Allowing multiple host systems to access the single storage device unit allows the host systems to share data in the device. In order to facilitate sharing of the data on the device, additional software on the data storage systems may also be used.
Different tasks may be performed in connection with a data storage system. For example, a customer may perform data storage configuration tasks. Such tasks may include, for example, configuring storage for use with an email application. In connection with the configuration processing, tasks may include allocating storage, specifying the logical and/or physical devices used for the storage allocation, specifying whether the data should be replicated, the particular RAID (Redundant Array of Independent or Inexpensive Disks) level, and the like. With such options in connection with performing the configuration, a customer may not have the appropriate level of sophistication and knowledge needed.
Thus, it may be desirable to utilize a flexible technique which assists customers in connection with performing data storage services such as related to data storage configuration. It may be desirable that the technique be adaptable to the particular knowledge level of the user.